package com.zkthink.zhl.order.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zkthink.base.R;
import com.zkthink.base.service.SuperService;
import com.zkthink.ceres.store.dto.HeXiaoDto;
import com.zkthink.ceres.store.dto.StoreWithdrawHisSaveDTO;
import com.zkthink.clh.order.dto.*;
import com.zkthink.clh.order.entity.*;
import com.zkthink.clh.order.vo.ChlCountinuePayVo;
import com.zkthink.clh.order.vo.ChlPlaceOrderVO;

import java.util.List;

/**
 * <p>
 * 业务接口
 * 车惠龙订单表
 * </p>
 *
 * @author chenke
 * @date 2022-04-24
 */
public interface ChlOrderService extends SuperService<ChlOrder> {
    /**
     * 后台 查询订单
     * @return
     */
    IPage<ChlOrder> page(IPage page, ChlOrderPageDTO model);
    /**
     * 后台 假删除订单
     * @param id
     * @return
     */
    int updateChlOrderDelete(Long id);
    /**
     * 下单
     * @param placeOrderDTO
     * @return
     */
    R<ChlPlaceOrderVO> placeOrder(ChlPlaceOrderDTO placeOrderDTO);

    R<ChlCountinuePayVo> continuePay(ChlContinuePayOrderDTO continuePayOrderDTO);
    /**
     * 核销
     */
    R examine(HeXiaoDto dto);

    /**
     * 申请退款
     *
     * @return
     */
    R refund(ChlOrderRefund refund);

    /**
     * 我的订单
     * @param mid
     * @return
     */
    R myOeder(Long mid);

    R wxSelectOrder(String id);

    /**
     * 删除我的订单
     * @param id
     * @return
     */
    R deleteOeder(Long id);

    /**
     * 订单消费金额
     * @return
     */
    R xiadan(XiadanDto dto);

    /**
     * 订单详情
     * @param id
     * @return
     */
    R getOeder(Long id);

    /**
     * 我的钱包
     * @return
     */
    R myqianbao(MyqianbaoDto dto);

    /**
     * applbt
     * @return
     */
    List<ChlLbt> applist();

    List<Vedio> selectVideo();

    /**
     * 提现
     * @param dto
     * @return
     */
    R withdraw(StoreWithdrawHisSaveDTO dto);

    /**
     * 店铺提现账单查询
     * @return
     */

    R storeTxBill( StoreBillDto dto);

    /**
     * 店铺账单查询
     * @param dto
     * @return
     */
    R storeBill(StoreBillDto dto);


}
